var opportunityBs = $('#opportunityBs').text();  //新增商机   1从商机列表的入口  2 从联系人详情的入口  带有bs,contactId,customerId
var contactIdAdd = $('#contactIdAdd').text();
var customerIdAdd = $('#customerIdAdd').text();
$(function () {
    // 初始化日期选择控件
    $('form .date-input').datepicker({
        language: "zh-CN",
        autoclose: true,
        clearBtn: true,
        todayHighlight: true,
        format: "yyyy-mm-dd"
    });

    // 初始化下拉菜单选择控件
    $('#addOpportunityModel').find('select').selectpicker({
        // liveSearch: true,
        liveSearchPlaceholder: '请输入要搜索的内容',
        sanitize: true,
        size: 10,
        windowPadding: '10'
    });

    // 初始化产品下拉列表
    $.ajax({
        type: 'POST',
        dataType: "json",
        url: '/opportunity/productList',
        cache : false,
        data:{
        },
        async : false,
        success: (function (data) {
            if (data.code == "000000") {
                if (data.data.length == 0) {
                    // 产品列表为空时，显示新增产品按钮
                    $("#customerProductId").selectpicker('destroy').hide(0).after('<button type="button" class="btn btn-success btn-label" onclick="addCustomerProduct()"><label><i class="mdi mdi-plus"></i></label>新增产品</button>')
                } else {
                    // 产品列表不为空时，显示产品列表
                    var html = '';
                    $.each(data.data, function(n, value) {
                        html += "<option value=" + value.customerProductId + ">" +  value.productName + "</option>";
                    });
                    $("#customerProductId").html(html).selectpicker('refresh');
                }
            } else {
                alert("请求失败");
            }
        }),
        error: (function (res) {
            alert("请求失败");
        })
    });

    // 初始化客户列表， 1从商机列表的入口  2从联系人详情的入口
    if(opportunityBs =='1'){
        //客户列表下拉框
        $.ajax({
            type: 'POST',
            dataType: "json",
            url: '/customerController/getCustomerList',
            cache : false,
            data:{
            },
            async : false,
            success: (function (data) {
                if (data.code == "000000") {
                    if (data.data.length == 0) {
                        // 客户列表为空时，显示新增客户按钮
                        $("#customerId").selectpicker('destroy').hide(0).after('<button type="button" class="btn btn-success btn-label" onclick="addCustomer()"><label><i class="mdi mdi-plus"></i></label>新增客户</button>')
                        $('#addCustomer').on('click', function () {
                            $('#addCustomerModel').modal('show');
                        })
                    } else {
                        // 客户列表不为空时，显示客户列表内容
                        var html = '';
                        $.each(data.data, function(n, value) {
                            html += "<option value=" + value.customerId + ">" +  value.customerName + "</option>";
                        });
                        $("#customerId").html(html).selectpicker('refresh').on('changed.bs.select', function (e, clickedIndex, isSelected, previousValue) {      // 内容变更触发
                            $('#contactId').attr('disabled', false);
                            contactByCustomerIdList();
                        });
                    }
                } else {
                    alert("请求失败");
                }
            }),
            error: (function (res) {
                alert("请求失败");
            })
        });
    }else{
        $("#customerIdHide").attr("style","display:none;");
        $('#contactId').attr('disabled', false);
        contactByCustomerIdList();
        //$("#contactIdHide").attr("style","display:none;");
    }

});

// 根据客户id查询联系人列表
function  contactByCustomerIdList(){
    var customerId = $('#customerId').val();
    if(opportunityBs == '2'){
        customerId = customerIdAdd;
    }
    //联系人列表下拉框
    $.ajax({
        type: 'POST',
        dataType: "json",
        url: '/opportunity/contactByCustomerIdList',
        cache : false,
        data:{
            customerId : customerId
        },
        async : false,
        success: (function (data) {
            if (data.code == "000000") {
                $('#addContactBtn').remove();      // 初始化删除添加按钮
                if (data.data.length == 0) {
                    $("#contactId").selectpicker('destroy').hide(0).after('<button type="button" id="addContactBtn" class="btn btn-success btn-label" onclick="addContact()"><label><i class="mdi mdi-plus"></i></label>新增联系人</button>')
                } else {
                    var html = '';
                    $.each(data.data, function(n, value) {
                        html += "<option value=" + value.contactId + ">" +  value.contactName+"_"+value.contactInformation + "</option>";
                    });
                    $("#contactId").html(html).selectpicker('refresh');
                }
            } else {
                alert("请求失败");
            }
        }),
        error: (function (res) {
            alert("请求失败");
        })
    });
}

var productBs = "";
//1从商机列表的入口  2 从联系人详情的入口  带有bs,contactId,customerId
if(opportunityBs == "1"){
    productBs = "1";
}else{
    productBs = "2";
}
/**
 * 新增产品点击事件
 */
function addCustomerProduct(){
    // productBs  产品返回标识 1商机列表新增商机触发-->新增产品  2联系人详情新增商机-->新增产品 暂不做跳转  3客户详情商机-->新增商机-->新增产品  暂不做跳转
    //           没值是从产品列表新增跳转和菜单新增产品
    parent.$(parent.document).data('multitabs').create({
        iframe : true,
        title : '新增产品',
        url : "/front/productManager/addProduct?productBs="+productBs
    }, true)
}

/**
 * 新增客户
 */
function addCustomer(){
    parent.$(parent.document).data('multitabs').create({
        iframe : true,
        title : '新增客户',
        url : "/front/customerManager/userAddCustomer?customerBs="+1
    }, true);
}


/**
 * 新增联系人
 */
function addContact(){
    var customerId = $('#customerId').val();
    parent.$(parent.document).data('multitabs').create({
        iframe : true,
        title : '新增联系人',
        url : "/front/contactManager/addContact?customerId=" + customerId
    }, true);
}

/**
 * 提交联系人
 */
function saveOpportunity() {
    var opportunityTitle = $('#opportunityTitle').val(); //商机标题
    var customerProductId= $('#customerProductId').val();  //产品id
    var opportunityTheme= $('#opportunityTheme').val();  //商机主题
    var contactId = $('#contactId').val();  //客户联系人
    var opportunityContact = $('#opportunityContact').val();  //商机联系人
    var opportunityStatus= $('#opportunityStatusAdd').val();  //商机状态
    var lostOrderFriend = $('#lostOrderFriend').val();  //输单友商
    var estimatedSigningTime = $('#estimatedSigningTimeAdd').val();  //预计签单时间
    var lastFollowUpTime = $('#lastFollowUpTime').val();  //最后跟进时间
    var nextFollowUpTime = $('#nextFollowUpTime').val();  //下次跟进时间
    var estimatedSalesAmount = $('#estimatedSalesAmount').val();  //预计销售金额
    var possibilitySigning = $('#possibilitySigning').val();  //签单可能性
    var opportunityType = $('#opportunityType').val(); //商机类型
    var opportunityAcquisitionTime = $('#opportunityAcquisitionTime').val(); //商机获取日期
    var opportunitySource = $('#opportunitySource').val(); //商机来源
    var remarks = $('#remarks').val(); //备注
    var customerId = $('#customerId').val();

    //联系人姓名为空判断
    var contactNameReg = /^[\u4e00-\u9fa5A-Za-z0-9_-]+[\)）（，；\(\.\%。\u4e00-\u9fa5A-Za-z0-9_-]?$/;
    var pattern = new RegExp(contactNameReg);
    if(!opportunityTitle){
        promptInfo("商机标题不能为空！");
        return;
    }else{
        if(!pattern.test(opportunityTitle)) {
            promptInfo("请输入正确的商机标题");
            return;
        }
    }

    //产品名称为空判断
    if(!customerProductId){
        promptInfo("产品名称不能为空！");
        return;
    }

    //商机主题为空判断
    if(!opportunityTheme){
        promptInfo("商机主题不能为空！");
        return;
    }

    if(opportunityBs == "1"){
    //客户联系人为空判断
        if(!contactId){
            promptInfo("客户联系人不能为空！");
            return;
        }
    }

    //商机联系人
    if(!opportunityContact){
        promptInfo("商机联系人不能为空！");
        return;
    }else{
        if(!pattern.test(opportunityContact)) {
            promptInfo("请输入正确的商机联系人");
            return;
        }
    }

    //商机状态
    if(!opportunityStatus){
        promptInfo("商机状态不能为空！");
        return;
    }


    //输单友商为空判断
    if(!lostOrderFriend){
        promptInfo("输单友商不能为空！");
        return;
    }else{
        if(!pattern.test(lostOrderFriend)) {
            promptInfo("请输入正确的输单友商");
            return;
        }
    }

    //预计签单时间为空判断
    if(!estimatedSigningTime){
        promptInfo("预计签单时间不能为空！");
        return;
    }

    //最后跟进时间为空判断
    if(!lastFollowUpTime){
        promptInfo("最后跟进时间不能为空！");
        return;
    }

    //下次跟进时间
    if(!nextFollowUpTime){
        promptInfo("下次跟进时间不能为空！");
        return;
    }

    //预计销售金额为空判断
    var priceReg = /(^[1-9]\d*(\.\d{1,2})?$)|(^0(\.\d{1,2})?$)/;
    var pricePattern = new RegExp(priceReg);
    if (!estimatedSalesAmount) {
        promptInfo("预计销售金额不能为空！");
        return;
    }else{
        if(!pricePattern.test(estimatedSalesAmount)) {
            promptInfo("请输入正确的预计销售金额");
            return;
        }
    }

    //签单可能性为空判断
    //var possibilitySigningReg = /^\d{1,}$/; // 非负整数
    //var possibilitySigningPattern = new RegExp(possibilitySigningReg);
    if (!possibilitySigning) {
        promptInfo("签单可能性不能为空！");
        return;
    }
    // else {
    //     if (!possibilitySigningPattern.test(possibilitySigning)) {
    //         promptInfo("签单可能性必须是整数！");
    //         return;
    //     }
    // }

    //商机类型为空判断
    if (!opportunityType) {
        promptInfo("商机类型不能为空！");
        return;
    }

    //商机获取日期为空判断
    if (!opportunityAcquisitionTime) {
        promptInfo("商机获取日期不能为空！");
        return;
    }

    //商机来源为空判断
    if (!opportunitySource) {
        promptInfo("商机来源不能为空！");
        return;
    }

    //备注为空判断
    if (!remarks) {
        promptInfo("备注不能为空！");
        return;
    }

    if(opportunityBs == "2"){
        contactId = contactIdAdd;
        customerId = customerIdAdd;
    }

    var jsonData = {
        opportunityTitle : opportunityTitle, //商机标题
        customerProductId : customerProductId,  //产品名称
        opportunityTheme : opportunityTheme,  //商机主题
        contactId  : contactId,  //客户联系人
        opportunityContact  : opportunityContact,  //商机联系人
        opportunityStatus : opportunityStatus,  //商机状态
        lostOrderFriend  : lostOrderFriend,  //输单友商
        estimatedSigningTime  : estimatedSigningTime,  //预计签单时间
        lastFollowUpTime  : lastFollowUpTime,  //最后跟进时间
        nextFollowUpTime  : nextFollowUpTime,  //下次跟进时间
        estimatedSalesAmount : estimatedSalesAmount,  //预计销售金额
        possibilitySigning : possibilitySigning,  //签单可能性
        opportunityType : opportunityType, //商机类型
        opportunityAcquisitionTime : opportunityAcquisitionTime, //商机获取日期
        opportunitySource : opportunitySource, //商机来源
        remarks : remarks, //备注
        customerId : customerId
    };

    $.ajax({
        url: '/opportunity/addOpportunity',
        type: 'POST',
        dataType: "json",
        contentType: "application/json;charset=utf-8",
        data: JSON.stringify(jsonData),
        success: (function (data) {
            if (data.code == "000000") {
                $.alert("操作成功！");
                var $thisTabs = parent.$('.mt-nav-bar .nav-tabs').find('li.active');
                var navTab = parent.$multitabs._getNavTab($thisTabs);
                closeTab(navTab);
                if(opportunityBs =="1"){
                    openTab("商机列表","/front/opportunityManager/userOpportunityForm");
                    refreshActivePane('/front/opportunityManager/userOpportunityForm');
                }else{
                    openTab("联系人详情","/front/user/contactManager/contactDetail?contactId=" + contactIdAdd);
                    refreshActivePane("/front/user/contactManager/contactDetail?contactId=" + contactIdAdd);
                }
                delStorageAndRemove(navTab);

            }else {
                alert("操作失败");
            }
        }),
        error: (function () {
            alert("失败");
        })
    });
}


function cancelAddOpportunity(){
    window.location.reload();
}

/**
 * 消息提示弹出框
 * @param content  ---提示内容
 */
function promptInfo(content) {
    $.alert({
        title: '温馨提示',
        content: content,
        buttons: {
            confirm: {
                text: '确认',
                btnClass: 'btn-primary'
            }
        }
    });
}